Flash memory devices having multi-bit memory cells therein with improved read reliability

ABSTRACT

Integrated circuit memory devices include an array of nonvolatile N-bit memory cells, where N is an integer greater than one. Control circuitry is also provided to reliably read data from the N-bit memory cells. This control circuitry, which is electrically coupled to the array, is configured to determine, among other things, a value of at least one bit of data stored in a selected N-bit memory cell in the array. This is done by decoding at least one hard data value and a plurality of soft data values (e.g., 6 data values) read from the selected N-bit memory cell using a corresponding plurality of unequal read voltages applied to the selected N-bit memory cell during a read operation.

CROSS-REFERENCE TO RELATED PATENT APPLICATIONS

This application is a Continuation of U.S. Ser. No. 12/967,969, filed onDec. 14, 2010, which claims priority to Korean Patent Application No.10-2010-0011554, filed Feb. 8, 2010, the contents of all of which arehereby incorporated herein by reference in their entireties.

FIELD

The invention relates to semiconductor memory devices and, moreparticularly, to flash memory devices and methods of operating same.

BACKGROUND

Semiconductor memory devices are generally classified into volatilememory devices (e.g., DRAMs and SRAMs) and nonvolatile memory devices(e.g., EEPROMs, FRAMs, PRAMs, MRAMs, and flash memories). A volatilememory device loses data stored therein when power supply thereto isinterrupted, whereas a nonvolatile memory device retains data storedtherein even when power supply thereto is interrupted. In particular, aflash memory device is widely used as a storage medium in a computersystem because of its high program speed, low power consumption andlarge data storage capacity.

In the flash memory device, data states storable in each memory cell maybe determined according to the number of bits stored in the memory cell.A memory cell storing 1-bit data per cell is called a single-bit cell ora single-level cell (SLC), and a memory cell storing multi-bit data(i.e., at least 2-bit data) per cell is called a multi-bit cell, amulti-level cell (MLC) or a multi-state cell. The multi-bit cell isadvantageous for high integration. However, as the number of bitsprogrammed in each memory cell increase, the reliability decreases andthe read failure rate increases.

For example, if k bits are to be programmed in a memory cell, one of2^(k) threshold voltages must be formed in the memory cell. Due to theminute difference between the electrical characteristics of memorycells, the threshold voltages of memory cells programmed with the samedata may form a predetermined range of threshold voltage distribution.Threshold voltage distributions may correspond respectively to 2^(k)data values that may be generated by k bits.

However, a voltage window available for threshold voltage distributionsis limited. Therefore, as the value k increases, the distance betweenthe threshold voltage distributions decreases and the adjacent thresholdvoltage distributions may overlap each other. As the adjacent thresholdvoltage distributions overlap each other, read data may include a numberof error bits (e.g., several error bits or several tens of error bits).What is therefore required is a scheme for efficientlydetecting/correcting a read error in data read from a flash memorydevice that stores multi-bit data.

SUMMARY

The present disclosure provides a flash memory device and a read methodthereof, which can efficiently provide additional information for errorcorrection without an increase in the chip size.

Integrated circuit memory devices according to embodiments of theinvention include an array of nonvolatile N-bit memory cells, where N isan integer greater than one. Control circuitry is also provided toreliably read data from the N-bit memory cells. This control circuitry,which is electrically coupled to the array, is configured to determine,among other things, a value of at least one bit of data stored in aselected N-bit memory cell in the array. This is done by decoding atleast one hard data value and a plurality of soft data values (e.g., 6data values) read from the selected N-bit memory cell using acorresponding plurality of unequal read voltages applied to the selectedN-bit memory cell during a read operation.

According to some embodiments of the invention, the control circuitryrepresents determining means. This control circuitry includes circuitryfor reading the hard data value from the selected N-bit memory cell byapplying a read reference voltage to the selected N-bit memory cell. Thecontrol circuitry also includes circuitry for reading the plurality ofsoft data values from the selected N-bit memory cell by applying aplurality of read voltages, which are less than or greater than the readreference voltage, to the selected N-bit memory cell.

According to additional embodiments of the invention, the controlcircuitry includes circuitry for reading a first plurality of soft datavalues from the selected N-bit memory cell by applying a first pluralityof read voltages that are less than the read reference voltage to theselected N-bit memory cell. This circuitry is also configured to read asecond plurality of soft data values from the selected N-bit memory cellby applying a second plurality of read voltages that are greater thanthe read reference voltage to the selected N-bit memory cell.

In particular, the control circuitry may include a row select circuitelectrically coupled to a plurality of word lines in the array, and avoltage generator configured to supply the row select circuit with readvoltages (e.g., the read reference voltage and the first and secondplurality of read voltages). The control circuitry may also include apage buffer circuit electrically coupled to a plurality of bit lines inthe array and control logic. This control logic is electrically coupledto the voltage generator, the row select circuit and the page buffercircuit. The control circuitry may also include an error checking andcorrection (ECC) circuit configured to receive the at least one harddata value and a plurality of soft data values read from the selectedN-bit memory cell during the read operation.

According to still further embodiments of the invention, the page buffercircuit may be configured to encode the plurality of soft data valuesinto a multi-bit reliability data value that specifies a relative degreeof accuracy of a corresponding hard data value. The control circuitrymay also include an error checking and correction (ECC) circuitconfigured to receive the at least one hard data value and the multi-bitreliability data value. For example, if the N-bit memory cells are 3-bitmemory cells, then the page buffer circuit may be configured to encodethe plurality of soft data values into a 2-bit reliability data valuethat specifies a relative degree of accuracy of a corresponding harddata value.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings are included to provide a furtherunderstanding of the inventive concept, and are incorporated in andconstitute a part of this specification. The drawings illustrateexemplary embodiments of the inventive concept and, together with thedescription, serve to explain principles of the inventive concept. Inthe drawings:

FIG. 1 is a diagram illustrating a schematic structure of a memorysystem including a flash memory according to an exemplary embodiment ofthe inventive concept;

FIG. 2 is a diagram illustrating a detailed structure of the memorysystem of FIG. 1 according to an exemplary embodiment of the inventiveconcept;

FIG. 3 is a diagram illustrating a detailed structure of the flashmemory of FIGS. 1 and 2 according to an exemplary embodiment of theinventive concept;

FIGS. 4 and 5 are diagrams illustrating an example of the thresholdvoltage distribution that may be formed in each cell of a 3-bit flashmemory through a program operation;

FIGS. 6 and 7 are diagrams illustrating a data read method forimprovement of error correction efficiency according to an exemplaryembodiment of the inventive concept;

FIGS. 8 and 9 are diagrams illustrating a read method according toanother exemplary embodiment of the inventive concept;

FIG. 10 is a diagram illustrating a structure of a solid state disk(SSD) system including a flash memory according to an exemplaryembodiment of the inventive concept;

FIG. 11 is a diagram illustrating a structure of a memory systemaccording to an exemplary embodiment of the inventive concept; and

FIG. 12 is a diagram illustrating a structure of a computing systemincluding a flash memory according to an exemplary embodiment of theinventive concept.

DETAILED DESCRIPTION OF THE EMBODIMENTS

Preferred embodiments of the inventive concept will be described belowin more detail with reference to the accompanying drawings. Theinventive concept may, however, be embodied in different forms andshould not be construed as limited to the embodiments set forth herein.Rather, these embodiments are provided so that this disclosure will bethorough and complete, and will fully convey the scope of the inventiveconcept to those skilled in the art. Like reference numerals refer tolike elements throughout. The circuit configurations and the readoperations of a flash memory device according to the inventive concept,which will be described below, are merely exemplary and various changesin form and details may be made therein without departing from thespirit and scope of the inventive concept.

FIG. 1 is a diagram illustrating a schematic structure of a memorysystem 1000 including a flash memory 100 according to an exemplaryembodiment of the inventive concept.

Referring to FIG. 1, the memory system 1000 may include a flash memory100 and a memory controller 200. The memory controller 200 may beconfigured to control the flash memory 100. The memory controller 200may include an error correction circuit (ECC) 230 for correcting anerror in data read from the flash memory 100. The ECC 230 may use a harddecision scheme or a soft decision scheme as an error correction scheme.

The hard decision scheme corrects an error in data by using only anerror correction code and data (hereinafter referred to as hard decisiondata) that are read according to the on/off characteristics of a memorycell when a predetermined reference voltage is applied thereto. The softdecision scheme corrects an error in data by using not only the errorcorrection code and the hard decision data but also additionalinformation (hereinafter referred to as soft decision data) about thereliability of the hard decision data. As an example, the inventiveconcept illustrates the case where the ECC 230 uses a soft decisionscheme to perform more accurate error correction. The encoding/decodingscheme of an error correction code applicable to the ECC 230 is notlimited to a specific embodiment but may vary according to variousembodiments.

The flash memory 100 may provide hard decision data and a plurality ofsoft decision data to the ECC 230 for each reference voltage (e.g., Ref1or Ref2) in a read operation. The hard decision data and the softdecision data may be read through a page buffer from the memory cells ofthe flash memory 100. A read operation of the page buffer on the harddecision data and the soft decision data may be performed under thecontrol of a control logic circuit 150 in the flash memory 100. The harddecision data may be read by applying the reference voltage. The softdecision data may be read by applying a plurality of variable readvoltages that vary from the reference voltage. The soft decision dataread from the flash memory 100 may be provided to the ECC 230 without achange in the read data bits. Also, the soft decision data may beencoded into a predetermined data format (hereinafter referred to asreliability data) before being provided to the ECC 230.

As will be described below, the flash memory 100 of the inventiveconcept is configured to generate reliability data for error correctionby the page buffer without using an additional circuit (e.g., anencoder) that encodes the soft decision data by a predetermined code.That is, the soft decision data, or the reliability data correspondingto the soft decision data may be outputted by the page buffer. Thus, theinventive concept makes it possible to increase the error correctionefficiency in a read operation of the flash memory without an increasein the chip size and to improve the reliability of the read multi-bitdata.

FIG. 2 is a diagram illustrating a detailed structure of the memorysystem 1000 of FIG. 1 according to an exemplary embodiment of theinventive concept. FIG. 3 is a diagram illustrating a detailed structureof the flash memory 100 of FIGS. 1 and 2 according to an exemplaryembodiment of the inventive concept.

Referring to FIGS. 2 and 3, the flash memory 100 may include a memorycell array 110, a row selector circuit (X-SEL) 120, a page buffercircuit 130, a column selector circuit (Y-SEL) 140, a control logiccircuit 150, and a voltage generator 160. The voltage generator 160 mayinclude a variable read voltage generator 170. A flash memory controller200 may include an error correction circuit (ECC) 230, a main controller240, and a system bus 250.

As illustrated in FIG. 3, the memory cell array 110 may include aplurality of cell strings (or NAND strings) 111 connected respectivelyto bit lines BL0˜BLm−1. The cell string 111 of each column may includeat least one string selection transistor SST and at least one groundselection transistor GST. A plurality of memory cells (or memory celltransistors) MC0˜MCn−1 may be connected in series between the selectiontransistors SST and GST. Each of the memory cells MC0˜-MCn−1 may includea multi-level cell (MLC) that stores multi-bit data per cell. Thestrings 111 may be electrically connected to the corresponding bit linesBL0˜BLm−1, respectively.

FIG. 3 illustrates an exemplary case where the flash memory 100 is aNAND flash memory. However, the flash memory 100 of the inventiveconcept is not limited to a NAND flash memory. For example, the memorycell array 110 may be configured to include a NOR flash memory, a hybridflash memory with a hybrid of at least two types of memory cells, or aOne-NAND flash memory with a controller embedded in a memory chip. Theoperation characteristics of the flash memory 100 according to theinventive concept may be applicable not only to a flash memory with acharge storage layer including a conductive floating gate, but also to acharge trap flash (CTF) memory with a charge storage layer including adielectric layer.

The control logic circuit 150 of FIG. 2 may control an overall operationrelated to a program/erase/read operation. According to operation modes,the voltage generator 160 may generate word line voltages (e.g., aprogram voltage Vpgm, a read voltage Vread, and a pass voltage Vpass) tobe supplied to the respective word lines, and a voltage to be suppliedto a bulk (e.g., a well region) including memory cells. The voltagegenerating operation of the voltage generator 160 may be performed underthe control of the control logic circuit 150. The voltage generator 160may include the variable read voltage generator 170 to generate aplurality of variable read voltages for reading a plurality of softdecision data.

In response to the control of the control logic circuit 150, the rowselector circuit 120 may select one of the memory blocks (or sectors) ofthe memory cell array 110 and may select one of the word lines of theselected memory block. In response to the control of the control logiccircuit 150, the row selector circuit 120 may provide the word linevoltages, generated by the voltage generator 160, respectively to theselected word line and the unselected word lines.

The page buffer circuit 130 may be controlled by the control logiccircuit 150 to operate as a sense amplifier or a write driver accordingto an operation mode. For example, in a verify/normal read operation,the page buffer circuit 130 operates as a sense amplifier for readingdata from the memory cell array 110. In a normal read operation, thecolumn selector circuit 140 outputs data, read from the page buffercircuit 130, to an external device (e.g., the memory controller 200 or ahost) in response to column address information Y-addr. In a verify readoperation, the read data may be provided to a pass/fail verificationcircuit (not illustrated) in the flash memory 100 to determine theprogram pass/fail of the memory cells.

In a program operation, the page buffer circuit 130 operates as a writedriver that drives the bit lines according to the data to be stored inthe memory cell array 110. In a program operation, the page buffercircuit 130 receives data, which is to be written in the memory cellarray 110, from a buffer (not illustrated) and drives the bit linesaccording to the received data. To this end, the page buffer circuit 130may include a plurality of page buffers PB corresponding respectively tocolumns (or bit lines) or column pairs (or bit line pairs). Each of thepage buffers PB may include a plurality of latches. The latches mayperform an operation of latching a plurality of soft decision data andhard decision data sensed from the page buffer PB, and an operation ofgenerating reliability data from the sensed soft decision data. As willbe described below in detail, the reliability data may be generatedthrough a toggling operation of the latches of each page buffer in aread operation.

FIGS. 4 and 5 are diagrams illustrating an example of the thresholdvoltage distribution that may be formed in each cell of a 3-bit flashmemory through a program operation. Referring to FIG. 4, the thresholdvoltage of a memory cell programmed with 3-bit data may correspond toone of 8-level data states E and P1˜P7. Each of the data states may forma predetermined threshold voltage window. Each memory cell may storek-bit (e.g., 3-bit) data, and the respective bits may be programmedindependently through a multi-stage program operation. For example, inthe case of a 3-bit MLC, the first bit (i.e., the least significant bit(LSB)) among the three bits may be programmed first. Thereafter, thesecond bit and the third bit may be programmed sequentially.

The ideal data state of the programmed MLC must maintain a predeterminedvoltage interval with respect to an adjacent data state in order tosecure a sufficient read margin. However, in a practical embodiment ofthe multi-bit flash memory, the threshold voltage distribution of eachdata state may change into an unideal form (See dotted-line sections) asillustrated in FIG. 5. This deformation may become more severe with anincrease in the number of data bits stored in each memory cell. Also,the deformation may become more severe due to various factors such ascharge loss, time lapse, temperature increase, coupling in theprogramming of an adjacent cell, reading of the adjacent cell, and celldefects. The read errors caused by the various factors may be correctedby the ECC 230. An accurate readout of the memory cell must precede foraccurate data decision and error correction.

Two reference voltages Ref1 and Ref2 may be used to read out the secondbit value among the 3-bit data programmed in the memory cell. Forexample, the second bit value may be read out as ‘1’ or ‘0’ according tothe on/off state of the memory cell when the first reference voltageRef1 and the second reference voltage Ref2 are applied thereto. Thereference voltage Ref1 for the data readout may be determined by theideal threshold voltage distribution illustrated in FIG. 4. Thus,relatively many errors may occur if the reference voltage Ref1 is usedto read out the data state of the unideal threshold voltage distributionillustrated in FIG. 5. This may adversely affect data decision and errorcorrection operations. Thus, in order to perform more accurate datadecision and error correction, the inventive concept performs aplurality of read operations by using a plurality of variable readvoltages in addition to the reference voltages. Also, a plurality ofread data obtained from the read operations is provided to the ECC 230to perform data decision and error correction.

FIGS. 6 and 7 are diagrams illustrating a data read method forimprovement of the error correction efficiency according to an exemplaryembodiment of the inventive concept. The output read data patternillustrated in FIG. 7 may be outputted from the flash memory 100 ofFIGS. 2 and 3. Referring to FIGS. 6 and 7, in a read operation, athreshold voltage interval between the first reference voltage Ref1 andthe second reference voltage Ref2 may be read out as data ‘0’. Also, athreshold voltage interval lower than the first reference voltage Ref1and a threshold voltage interval higher than the second referencevoltage Ref2 may be read out as data ‘1’. If adjacent threshold voltagedistributions do not overlap each other like regions B and C, accuratedata decision and error correction may be possible solely by the readoutresults based on the first and second reference voltages Ref1 and Ref2(i.e., solely by hard decision data). In a hard decision operation, amemory cell with a threshold voltage distribution of the region B may bedetermined as a memory cell with a data state ‘0’.

However, if the adjacent threshold voltage distributions overlap eachother, the accuracy of the read operation and error correction cannot besecured solely by the hard decision data. For example, the memory cellwith a threshold voltage within a region A may be determined as a memorycell of the state P2 having a data state ‘0’ in hard decision. However,the memory cell with a threshold voltage within the region A (areference numeral 164 of FIG. 6) is highly probable to be a memory cellof the state P2 and is also highly probable to be a memory cell of thestate P1. Thus, in this case, it must be considered whether theprobability of the memory cell being a memory cell of the state P1 ishigher than the probability of the memory cell being a memory cell ofthe state P2. For example, in terms of the probability of having a datastate ‘0’, the memory cell with a threshold voltage within the region Ais the lowest among regions (164, 165 and 166 of FIG. 6) that aredetermined as a data state ‘0’. This case may be recognized as a weak‘0’ in a soft decision scheme. Meanwhile, the probability of a memorycell of the region B having a data state ‘1’ reaches approximately 0.Therefore, in a soft decision operation, the memory cell of the region Bmay be recognized as a state of strong ‘0’. The probability of thememory cell having a data state ‘0’ increases as the threshold voltagedistribution approaches the region B in the interval (e.g., 164, 165 and166 of FIG. 6) where the memory cell is recognized as data ‘0’.

In order to perform more accurate data decision and error correction,the inventive concept performs a plurality of read operations by using aplurality of variable read voltages in addition to the referencevoltages. Also, for error correction, a plurality of read data obtainedfrom the read operations is provided from the page buffer PB directly tothe ECC 230 without passing through an additional circuit (e.g., anencoder).

FIGS. 6 and 7 illustrate examples of the read voltages V1˜V7 and V8˜V14applied to read the second bit value among the 3-bit data programmed inthe memory cell. The intervals 161˜166 between read voltages V1˜V7 andV8˜V14 for a read operation may be configured to have the same size ordifferent sizes. The number of read voltages V1˜V7 and V8˜V14 and thevoltage difference between the read voltages V1˜V7 and V8˜V14 may varyaccording to various embodiments. Also, the voltage difference may havea fixed value or may vary according to user's selection or operationmodes.

The read voltages V1˜V7 and V8˜V14 may be divided into referencevoltages and variable read voltages. For example, two reference voltagesRef1 and Ref2 may be used to read the second bit value among the 3-bitdata programmed in the memory cell. The first reference voltage Ref1 isdenoted by V4 and the second reference voltage Ref2 is denoted by V11.The data read by applying the reference voltages Ref1 and Ref2 arereferred to as hard decision data. In the inventive concept, a pluralityof variable read voltages may correspond to each of the referencevoltages Ref1 and Ref2. Variable read voltages V1˜V3 and V5˜V7 maycorrespond to the first reference voltage Ref1, and variable readvoltages V8˜V10 and V12˜V14 may correspond to the second referencevoltage Ref2. The data read by a plurality of variable read voltages arereferred to as soft decision data. In an exemplary embodiment, 6 softdecision data may be obtained additionally with respect to 1 harddecision data so that a total of 7-bit data may be outputted as readdata. Herein, the number of soft decision data corresponding to 1 harddecision data may vary according to various embodiments. FIG. 7illustrates an example of the pattern of 7-bit read data that areobtained according to an embodiment of the inventive concept.

The ECC 230 may determine data on the basis of the 7-bit read datapattern received from the flash memory 100, and may perform errorcorrection on the basis of the determination results. The probability ofbeing determined as ‘0’ increases with an increase in the number of 0samong the 7-bit read data pattern received from the flash memory 100.Also, the probability of being determined as ‘1’ increases with anincrease in the number of 1s among the 7-bit read data pattern.

For example, if the 7-bit read data pattern is “0, 0, 0, 0, 1, 1, 1”,the memory cell may be recognized as a memory cell included in theregion A, which may mean a weak ‘0’ in soft decision. If the 7-bit readdata pattern is “0, 0, 0, 1, 1, 1, 1”, the memory cell may mean a weak‘1’ in soft decision. If the 7-bit read data pattern is “0, 0, 0, 0, 0,0, 0”, the memory cell may be recognized as a memory cell included inthe region B, which may mean a strong ‘0’ in soft decision. If the 7-bitread data pattern is “1, 1, 1, 1, 1, 1, 1”, the memory cell may berecognized as a memory cell included in the region C, which may mean astrong ‘1’ in soft decision. According to this configuration, byanalyzing the 7-bit read data in a read operation, it can be accuratelyknown whether the threshold voltage distribution of the memory cell ispresent in a certain region (e.g., 161˜166 of FIG. 6). Thus, moreaccurate error correction is possible.

Herein, each of the data constituting the 7-bit read data pattern maymean the data value that is sensed in the page buffer PB when each readvoltage is applied thereto. This may mean that the page buffer PBgenerates additional information (e.g., a plurality of soft decisiondata) for error correction even when the flash memory 100 does notinclude an additional circuit such as an encoder.

Each of the read voltages V1˜V7 and V8˜V14 may be generated by thevoltage generator 160 under the control of the control logic circuit 150of FIG. 2. The voltage generator 160 may include a variable read voltagegenerator 170. The variable read voltage generator 170 may generate aplurality of variable read voltages V1˜V3, V5˜V7, V8˜V10 and V12˜V14under the control of the control logic circuit 150. The level of each ofthe read voltages V1˜V7 and V8˜V14 may vary according to variousembodiments.

The 7-bit read data pattern illustrated in FIG. 7 may be obtainedthrough each of the page buffers PB under the control of the controllogic circuit 150. Each of the page buffers PB may include a pluralityof latches that latches sensed data. For example, if the page buffer PBincludes 7 latches, the 7-bit read data may be latched through the 7latches. For example, if the page buffer PB includes 2 latches, thefirst latch may perform a function of latching the 7-bit read datawhenever it is sensed and the second latch may perform a function ofbacking up and outputting the data latched in the first latch while thepage buffer PB is sensing data.

Meanwhile, a plurality of read operations in each page buffer PB using aplurality of read voltages V1˜V7 and V8˜V14 may be implemented invarious ways. For example, it may be obtained by sequentially repeatinga precharge operation and a sensing operation or by performing aplurality of sensing operations with respect to one precharge operation.A plurality of read operations in each page buffer PB or a sensingoperation for a plurality of data bits may be implemented in variousmodes.

FIGS. 8 and 9 are diagrams illustrating a read method according toanother exemplary embodiment of the inventive concept. FIG. 8illustrates hard decision data outputted from the page buffer PB, andthe corresponding reliability data. FIG. 9 illustrates a latch structureof the page buffer PB that generates the data pattern illustrated inFIG. 8. The output read data pattern illustrated in FIG. 8 may beoutputted directly from the page buffer circuit 130 of FIGS. 2 and 3without using an additional circuit such as an encoder. The structure ofthe page buffer PB illustrated in FIG. 9 is substantially identical tothe structure of the page buffer PB of the page buffer circuit 130illustrated in FIGS. 2 and 3.

In this embodiment, the form of a plurality of read voltages applied ina plurality of read operations may be configured in the same way asdescribed with reference to FIGS. 6 and 7. Also, the form of the readdata pattern sensed in the page buffer PB may be configured in the sameway as described with reference to FIG. 7. However, according to anotherexemplary embodiment, the form of the data pattern outputted from thepage buffer PB may be configured to have a 3-bit configuration unlikethe illustration of FIG. 7. That is, seven read operations may beiteratively performed to output one read data pattern comprised of 3bits. The form of data sensed in seven iterative read operations may beidentical to that of FIG. 7, but the actually outputted data may have apredetermined data pattern as illustrated in FIG. 8. In the inventiveconcept, a plurality of data sensed in the page buffer PB may bedirectly outputted as reliability data, which may be used for the softdecision of the ECC 230, without passing through an additional circuit(e.g., an encoder). In an exemplary embodiment, the read data outputtedthrough the page buffer PB may include 1-bit hard decision data and2-bit reliability data. Herein, the bit number and configuration of theoutputted read data and reliability data may vary according to variousembodiments.

Referring to FIG. 9, each of the page buffers PB may include at leastthree latches to output 3-bit read data. FIG. 9 illustrates an exemplarycase where the page buffer PB includes three latches L1˜L3. One (e.g.,L3) of the latches L1˜L3 may be used to latch hard decision data. Theother two latches (e.g., L1 and L2) may be used to generate 2-bitreliability data in response to the sensing result of the page bufferPB. In an exemplary embodiment, the reliability data may be generated bytoggling the latches L1 and L2 to a value different from the latchedvalue whenever the sensing result of the page buffer PB becomes ‘0’.Each of the latches L1˜L3 may be initialized to a state ‘1’. A pluralityof (e.g., seven) read operations may be performed using a plurality of(e.g., seven) different read voltages corresponding to the respectivereference voltages, while the latches L1˜L3 are initialized.

For example, the read result sensed from the memory cell with athreshold voltage distribution within the interval 161 of FIG. 6 has apattern of “0, 1, 1, (1), 1, 1, 1”. Herein, the data of (1) are harddecision data and may be latched by the latch L3. The hard decision datamay be configured not to engage in the toggling of the latches L1 andL2. In this case, since the soft decision data include one 0, only thevalue latched in the latch L1 toggles from ‘1’ to ‘0’ and the latch L2maintains a data state ‘1’, that is, an initial value. Therefore, theoutput read data corresponding to the interval 161 of FIG. 6 may includereliability data ‘01’ and hard decision data ‘1’. In a soft decisionoperation, from the hard decision data ‘1’ and the reliability data ‘01’received from the flash memory 100, the ECC 230 may recognize that athreshold voltage distribution of the memory cell is included in theinterval 161 of FIG. 6.

The read result sensed from the memory cell with a threshold voltagedistribution within the interval 162 of FIG. 6 has a pattern of “0, 0,1, (1), 1, 1, 1”. In this case, the soft decision data include two 0s.If the soft decision data include one 0, the reliability data have avalue ‘01’. Therefore, if the soft decision data include two 0s, thelatch L2 toggles from ‘1’ to ‘0’ while the latch L1 maintains data ‘0’,thus constructing reliability data ‘00’. In this case, the hard decisiondata have a value ‘1’.

The read result sensed from the memory cell with a threshold voltagedistribution within the interval 163 of FIG. 6 has a pattern of “0, 0,0, (1), 1, 1, 1”. In this case, the soft decision data include three 0s.If the soft decision data include two 0s, the reliability data have avalue ‘00’. Therefore, if the soft decision data include three 0s, thelatch L1 toggles from ‘0’ to ‘1’ and the latch L2 maintains a state ‘0’.Therefore, the output read data read from the memory cell belonging tothe interval 163 may include reliability data ‘10’ and hard decisiondata ‘1’, which may mean a weak ‘1’ in soft decision.

The read result sensed from the memory cell with a threshold voltagedistribution within the interval 164 of FIG. 6 has a pattern of “0, 0,0, (0), 1, 1, 1”. Herein, the data of (0) are hard decision data and maybe latched by the latch L3. The hard decision data may be configured notto engage in the toggling of the latches L1 and L2. In this case, sincethe soft decision data include three 0s, the output read data read fromthe memory cell belonging to the interval 164 may include reliabilitydata ‘10’ and hard decision data ‘0’, which may mean a weak ‘0’ in softdecision.

The read result sensed from the memory cell with a threshold voltagedistribution within the interval 165 of FIG. 6 has a pattern of “0, 0,0, (0), 0, 1, 1”. In this case, the soft decision data include four 0s.If the soft decision data include three 0s, the reliability data have avalue ‘10’. Therefore, if the soft decision data include four 0s, thelatch L1 with a value ‘1’ toggles from ‘1’ to ‘0’ and the latch L2maintains a state ‘0’. Therefore, the output read data read from thememory cell belonging to the interval 165 may include reliability data‘00’ and hard decision data ‘0’.

The read result sensed from the memory cell with a threshold voltagedistribution within the interval 166 of FIG. 6 has a pattern of “0, 0,0, (0), 0, 0, 1”. In this case, the soft decision data include five 0s.If the soft decision data include four 0s, the reliability data have avalue ‘00’. Therefore, if the soft decision data include five 0s, thelatch L2 with a value ‘0’ toggles from ‘0’ to ‘1’ and the latch L1maintains a state ‘0’. Therefore, the output read data read from thememory cell belonging to the interval 166 may include reliability data‘01’ and hard decision data ‘0’.

If the read result sensed from the memory cell has a pattern of “0, 0,0, (0), 0, 0, 0”, the soft decision data include six 0s. If the softdecision data include five 0s, the reliability data have a value ‘01’.Therefore, if the soft decision data include six 0s, the latch L1 with avalue ‘0’ toggles from ‘0’ to ‘1’ and the latch L2 maintains a state‘1’. Therefore, if a data pattern, all data of which have a value ‘0’,is sensed, the output read data may include reliability data ‘11’ andhard decision data ‘0’. This may mean a strong ‘0’ in soft decision.Likewise, the read voltages V8˜V14 may be applied to output the datavalues corresponding to the data sensed in the page buffer PB. Asdescribed above, the reliability data outputted from the page buffer PBmay have a value of “01, 00, 10 and 11”. The data reliability size maybe 11>01>00>10.

The read method of the inventive concept described above may becontrolled to be performed selectively with respect to the case where anerase/program cycle (#P/E cycle) (i.e., one of the indexes fordetermination of the lifetime of the flash memory 100) is more than apredetermined count, the case where more than a predetermined number oferrors occur, or the case where an accurate read operation or anaccurate error correction operation is required. The read methodaccording to the inventive concept may also be applicable to variouscases other than the above cases. Also, the read method of the inventiveconcept described above may be applicable not only to a read operationon the upper bits (e.g., one or more MSB bits) stored in multi-levelcells, but also to a read operation on the lower bits (e.g., LSB bits).

FIG. 10 is a diagram illustrating a structure of a solid state disk(SSD) system 1002 including a flash memory 100 according to an exemplaryembodiment of the inventive concept. Referring to FIG. 10, the SSDsystem 1002 may include a host 1100 and an SSD 1200. The SSD 1200 mayinclude an SSD controller 1210, a buffer memory 1220, and a flash memory100. The SSD controller 1210 may provide a physical connection with thehost 1100 and the SSD 1200. That is, the SSD controller 1210 may providean interface with the SSD 1200 according to a bus format of the host1100. The SSD controller 1210 may decode a command received from thehost 1100. According to the decoding results, the SSD controller 1210may access the flash memory 100. Examples of the bus format of the host1100 may include Universal Serial Bus (USB), Small Computer SystemInterface (SCSI), PCI Express, ATA, Parallel ATA (PATA), Serial ATA(SATA), and Serial Attached SCSI (SAS).

The buffer memory 1220 may be configured using a synchronous DRAM (SRAM)in order to provide sufficient buffering in the SSD 1200. However, thisis merely an example of the configuration of the buffer memory 1220. Theconfiguration of the buffer memory 1220 is not limited to a specificembodiment but may vary according to various embodiments. The buffermemory 1220 may temporarily store write data received from the host 1100or data read from the flash memory 100. At the read request of the host1100, if data in the flash memory 100 is stored in the buffer memory1220, the buffer memory 1220 may support a cache function of providingthe stored data directly to the host 1100. Typically, the datatransmission rate according to the bus format (e.g., SATA or SAS) of thehost 1100 is much higher than the data transmission rate of a memorychannel of the SSD 1200. If the interface rate of the host 1100 is muchhigher than that of the SSD 1200, a large-capacity buffer memory 1220may be provided to minimize the performance degradation caused by therate difference.

The flash memory 100 may be used as a main memory of the SSD 1200. Tothis end, the flash memory 100 may be configured using a NAND flashmemory with a large storage capacity. However, the type of the flashmemory 100 in the SSD 1200 is not limited to a NAND flash memory. Forexample, the flash memory 100 may also be configured using a NOR flashmemory, a hybrid flash memory with a hybrid of at least two types ofmemory cells, or a One-NAND flash memory with a controller embedded in amemory chip. Also, a plurality of channels may be provided in the SSD1200 and a plurality of flash memories 100 may be connected to therespective channels. Although a NAND flash memory has been exemplifiedas the main memory, other nonvolatile memories may be used as the mainmemory. For example, at least one of volatile memories (e.g., DRAMs andSRAMs) and nonvolatile memories (e.g., PRAMs, MRAMs, ReRAMs, and FRAMs)may be used as the main memory.

The flash memory 100 of FIG. 10 may be configured to have substantiallythe same configuration as the flash memory of FIGS. 2 and 3. The flashmemory 100 may perform a plurality of read operations on a multi-levelcell by applying a reference voltage and a plurality of variable readvoltages that vary from the reference voltage. The read data obtainedfrom the read operations may include hard decision data and a pluralityof soft decision data. In providing the read data to the errorcorrection circuit 230 to the ECC 230, the flash memory 100 of theinventive concept may provide the soft decision data without a change ormay encode the soft decision data into a predetermined data format(i.e., reliability data) before providing it to the ECC 230. Thereliability data and the soft decision data provided by the flash memory100 may be generated by the page buffer of the flash memory 100 evenwithout using an additional circuit such as an encoder.

FIG. 11 is a diagram illustrating a structure of a memory system 2000according to an exemplary embodiment of the inventive concept. Referringto FIG. 11, the memory system 2000 may include a flash memory 100 and amemory controller 2100. The flash memory 100 of FIG. 11 may beconfigured to have substantially the same configuration as the flashmemory of FIGS. 2 and 3. Also, the flash memory 100 of FIG. 11 mayperform a read operation as described above. The memory controller 2100may be configured to control the flash memory 100. The memory controller2100 may be configured to have the same configuration as the memorycontroller 200 of FIG. 2. Thus, an overlapping description of the sameconfiguration will be omitted for conciseness.

A combination of the flash memory 100 and the memory controller 2100 maybe provided as a memory card or a solid state disk (SSD). An SRAM 2110may be used as a working memory of a central processing unit (CPU) 2120.A host interface (I/F) 2130 may have a data exchange protocol of a hostconnected to the memory system 2000. An error correction circuit (ECC)2140 in the memory controller 2100 may be configured to havesubstantially the same configuration as the ECC 230 of FIG. 2. The ECC2140 may detect/correct an error in read data by using a plurality ofsoft decision data or reliability data received from the flash memory100. A memory interface (I/F) 2150 may interface with the flash memory100. The CPU 2120 may perform an overall control operation for dataexchange of the memory controller 2100. Although not illustrated in FIG.11, the memory system 2000 may further include a read-only memory (ROM)that stores code data for interfacing with the host.

The flash memory 100 may be provided as a multi-chip package including aplurality of flash memory chips. The memory system 2000 of the inventiveconcept may be provided as a high-reliability storage medium with a lowerror probability. In particular, the flash memory of the inventiveconcept may be provided in a memory system such as a solid state disk(SSD) that is under active research. In this case, the memory controller2100 may be configured to communication with an external device (e.g.,the host) through one of various interface protocols such as USB, MMC,PCI-E, SAS, SATA, PATA, SCSI, ESDI, and IDE. Also, the memory controller2100 may further include a configuration for performing a randomoperation.

FIG. 12 is a diagram illustrating a structure of a computing system 3000including a flash memory 100 according to an exemplary embodiment of theinventive concept. Referring to FIG. 12, the computing system 3000 mayinclude a microprocessor (or CPU) 3200, a RAM 3300, a user interface3400, a modem 3500 (e.g., a baseband chipset), and a memory system 3100that are electrically connected to a system bus 3600. The memory system3100 may include a memory controller 3110 and a flash memory 100. Thememory controller 3110 may provide a physical connection with the CPU3200 and the flash memory 100 through the system bus 3600. That is, thememory controller 3110 may provide an interface with the flash memory100 according to a bus format of the CPU 3200. The flash memory 100 ofFIG. 12 may be configured to have substantially the same configurationas the flash memory of FIGS. 2 and 3. Also, the flash memory 100 of FIG.12 may perform a read operation as described above. Thus, an overlappingdescription of the same configuration will be omitted for conciseness.

If the computing system 3000 is a mobile device, a battery (notillustrated) may be further provided to supply an operation voltage ofthe computing system 3000. Although not illustrated in FIG. 12, thecomputing system 3000 may further include an application chipset, acamera image processor (CIS), and a mobile DRAM. For example, the memorysystem 3100 may constitute a solid state drive/disk (SSD) that uses anonvolatile memory to store data. For example, the memory system 3100 ofFIG. 12 may constitute the SSD 1200 of FIG. 10. In this case, the memorycontroller 3110 may operate as the SSD controller 1210.

The nonvolatile memory device and/or the memory controller according tothe inventive concept may be mounted in various types of packages.Examples of the packages of the flash memory device and/or the memorycontroller according to the inventive concept include Package on Package(PoP), Ball Grid Arrays (BGAs), Chip Scale Packages (CSPs), PlasticLeaded Chip Carrier (PLCC), Plastic Dual In-line Package (PDIP), Die inWaffle Pack, Die in Wafer Form, Chip On Board (COB), Ceramic DualIn-line Package (CERDIP), Plastic Metric Quad Flat Pack (MQFP), ThinQuad Flat Pack (TQFP), Small Outline Integrated Circuit (SOIC), ShrinkSmall Outline Package (SSOP), Thin Small Outline Package (TSOP), SystemIn Package (SIP), Multi Chip Package (MCP), Wafer-level FabricatedPackage (WFP), and Wafer-level Processed Stack Package (WSP).

As described above, the inventive concept can generate additionalinformation (e.g., soft decision data or data reliability information)for error correction by using a read operation of the page buffer evenwithout using an additional circuit such as an encoder. Thus, theinventive concept can increase the error correction efficiency in a readoperation of the flash memory without an increase in the chip size andcan improve the reliability of multi-bit data read from the flash memorydevice.

The above-disclosed subject matter is to be considered illustrative andnot restrictive, and the appended claims are intended to cover all suchmodifications, enhancements, and other embodiments, which fall withinthe true spirit and scope of the inventive concept. Thus, to the maximumextent allowed by law, the scope of the inventive concept is to bedetermined by the broadest permissible interpretation of the followingclaims and their equivalents, and shall not be restricted or limited bythe foregoing detailed description.

What is claimed is:
 1. A nonvolatile memory system comprising: anonvolatile memory device comprising: a memory cell array comprising aplurality of memory cells:, a control logic configured to control a readoperation on the plurality of memory cells; and a page buffer circuitconfigured to sense hard decision data and a plurality of soft decisiondata from each of a plurality of selected memory cells under control ofthe control logic and to output the hard decision data and the pluralityof soft decision data as a read result; and a memory controllerincluding an error check and correction (ECC) circuit configured toperform error correction using the read result, wherein the page buffercircuit is configured to encode the plurality of soft decision data asreliability data, wherein a bit number of the hard decision data is 1,wherein a bit number of the plurality of soft decision data is n,wherein n is a positive integer, wherein a bit number of the reliabilitydata is m, and wherein m is a positive integer less than n.
 2. Thenonvolatile memory system of claim 1, wherein the page buffer circuitcomprises a plurality of page buffers, and wherein each of the pluralityof page buffers comprises a plurality of first type latches configuredto encode the plurality of soft decision data by a latched value toggledin response to a value of the plurality of soft decision data and asecond type latch configured to latch the hard decision data.
 3. Thenonvolatile memory system of claim 2, wherein the plurality of firsttype latches are configured to not be toggled by the hard decision data.4. A nonvolatile memory system comprising: a nonvolatile memory devicecomprising: a memory cell array comprising a plurality of memory cells;a control logic configured to control a read operation on the pluralityof memory cells; and a page buffer circuit configured to sense harddecision data and a plurality of soft decision data from each of aplurality of selected memory cells under control of the control logicand to output the hard decision data and the plurality of soft decisiondata as a read result; and a memory controller comprising an error checkand correction (ECC) circuit configured to perform error correctionusing the read result, wherein the page buffer circuit is configured toencode the plurality of soft decision data as reliability data therein,and wherein a number of bits of the soft decision data equal to one bitof the hard decision data varies depending on whether performance of theerror correction using the read result is successful, such that anincrease in the number of the bits of the soft decision data equal tothe one bit of the hard decision data corresponds to increased successof the error correction.
 5. The nonvolatile memory system of claim 4,wherein when performance of the error correction using the read resulthas failed, the page buffer circuit is configured to sense additionalsoft decision data from each of the plurality of selected memory cells.6. The nonvolatile memory system of claim 5, wherein the page buffercircuit is configured to encode additional soft decision data.
 7. Thenonvolatile memory system of claim 6, wherein the error check andcorrection (ECC) circuit is further configured to perform errorcorrection using the read result and the encoded additional softdecision data.
 8. The nonvolatile memory system of claim 4, wherein: thenumber of bits of the plurality of soft decision data is n; a number ofbits of the reliability data is m; and m is a positive integer less thann.
 9. A nonvolatile memory system comprising: a nonvolatile memorydevice comprising: a memory cell array comprising a plurality of memorycells; a control logic configured to control a read operation on theplurality of memory cells; a page buffer circuit configured to sensehard decision data and a plurality of soft decision data from each of aplurality of selected memory cells under control of the control logicand to output the hard decision data and the plurality of soft decisiondata as a read result; and a voltage generator configured to generate aplurality of read voltages for reading the hard decision data and theplurality of soft decision data under control of the control logic; anda memory controller comprising an error check and correction (ECC)circuit configured to perform error correction using the read result,wherein the page buffer circuit is configured to encode the plurality ofsoft decision data as reliability data, wherein the control logic isconfigured to selectively apply voltages for reading the plurality ofsoft decision data when an erase/program cycle is more than apredetermined count, wherein a bit number of the hard decision data is1, wherein a bit number of the plurality of soft decision data is n,wherein n is a positive integer, wherein a bit number of the reliabilitydata is m, and wherein m is a positive integer less than n.
 10. Thenonvolatile memory system of claim 9, wherein the voltage generator isconfigured to generate at least one reference voltage for reading thehard decision data and a plurality of variable read voltages for readingthe soft decision data.
 11. The nonvolatile memory system of claim 10,wherein each of the variable read voltages has a predetermined voltagedifference in comparison with the reference voltage.
 12. The nonvolatilememory system of claim 10, wherein a voltage difference between the atleast one reference voltage and each of the plurality of variable readvoltages is variable.
 13. A nonvolatile memory system comprising: anonvolatile memory device comprising: a memory cell array comprising aplurality of memory cells; a control logic configured to control a readoperation on the plurality of memory cells; and a page buffer circuitconfigured to sense hard decision data and a plurality of soft decisiondata from each of a plurality of selected memory cells under control ofthe control logic and to output the hard decision data and the pluralityof soft decision data as a read result; and a memory controllercomprising an error check and correction (ECC) circuit configured toperform error correction using the read result, wherein the page buffercircuit is configured to encode the plurality of soft decision data asreliability data, wherein first soft decision data that has a majoritybit of 0 included in the plurality of soft decision data comprises afirst quantity of the majority bit of 0, wherein second soft decisiondata that has a majority bit of 1 included in the plurality of softdecision data comprises a second quantity of the majority bit of 1,wherein the first quantity of the majority bit of 0 and the secondquantity of the majority bit of 1 comprise equal quantities, and whereinthe page buffer circuit is configured to encode the first soft decisiondata and the second soft decision data as identical reliability data.14. The nonvolatile memory system of claim 13, wherein a bit number ofthe hard decision data is 1, wherein a bit number of the plurality ofsoft decision data is n, and wherein n is a positive integer.
 15. Thenonvolatile memory system of claim 14, wherein a bit number of thereliability data is m, and wherein m is a positive integer less than n.16. The nonvolatile memory system of claim 15, wherein n is 6 and m is2.
 17. The nonvolatile memory system of claim 16, wherein when thereliability data is 11, the reliability data has a highest possible databit of 0 or 1.